integer menu_channel;



list menu;
list menu_colors1;
list menu_colors2;
list menu_colors3;
list menu_shininiess;
list menu_start;
 
 initialisations()
{
   menu_channel = -234111;

   menu = [  "Colors1", "Colors2", "Colors3", "Shines","Start/End" ];
   menu_colors1 = [ "black","white","gray","silver","darkgray",
    "lightgrey","red","darkred","crimson","indianred","orangered", "...retour" ];
   menu_colors2 = [ "hotpink","pink","lightpink","deeppink",
        "fuchsia","orchid","plum","violet","indigo","lavender","magenta" ,"...retour"];
   menu_colors3 = [ "purple","darkmagenta","darkviolet","blueviolet","darkblue","blue","deepskyblue","mediumblue","midnightblue","royalblue","slateblue" ,"...retour"];
   menu_shininiess = [ "None","Low","Medium","Maximum","...retour"];
   menu_start = [ "Start","End","...retour"];

}


default
{
   state_entry()
   {
      initialisations();
      llListen(menu_channel, "", NULL_KEY, "");
   }

   touch_start(integer total_number)
   {
      llDialog(llDetectedKey(0), "Choisissez une option", menu, menu_channel);
   }

   listen(integer menu_channel, string name, key id, string message)
   {
      if (llListFindList(menu + menu_colors1+ menu_colors2 +menu_colors3+menu_shininiess+menu_start, [message]) != -1)
      

     
       {
         
         
         if (message == "Colors1")
            llDialog(id, "Choisissez une couleur", menu_colors1, menu_channel);
            
         
           else if (message == "Colors2")
            llDialog(id, "Choisissez une couleur", menu_colors2,menu_channel);
       
        
          else if (message == "Colors3")
            llDialog(id, "Choisissez une couleur", menu_colors3, menu_channel);
       
         
         else if (message == "Shines")
            llDialog(id, "Choose your shine", menu_shininiess,menu_channel);
         
            else if (message == "Start/End")
            llDialog(id, "Select Start to attach the missing part on F1 and chosse End to detach and erase it", menu_start,menu_channel);
            
            
            
            else if (message == "...retour")
            llDialog(id, "Choisissez une option", menu,menu_channel);
   
          
   else if ( message == "black" ) 
    {
       llSetColor(<0,0,0>, ALL_SIDES); 
       
    }
    else if ( message == "white" )
    {
        llSetColor(<1,1,1>, ALL_SIDES); 
    }
    else if ( message == "gray" )
    {
          llSetColor(<.5,.5,.5>, ALL_SIDES); 
    }
    else if ( message == "silver" )
    {
      llSetColor(<.75,.75,.75>, ALL_SIDES); 
    }
    else if ( message == "darkgray" )
    {
      llSetColor(<.4,.4,.4>, ALL_SIDES); 
    }
    else if ( message == "lightgrey" )
    {
       llSetColor(<0.83,0.83,0.83>, ALL_SIDES); ;
    }
    else if ( message == "red" )
    {
       llSetColor(<1,0,0>, ALL_SIDES); 
    }
    else if ( message == "darkred" )
    {
        llSetColor(<0.55,0,0>, ALL_SIDES); 
    }
    else if ( message == "crimson" )
    {
          llSetColor(<0.86,0.08,0.24>, ALL_SIDES); 
    }
    else if ( message == "indianred" )
    {
      llSetColor(<0.8,0.36,0.36>, ALL_SIDES); 
    }
    else if ( message == "darkgray" )
    {
      llSetColor(<.4,.4,.4>, ALL_SIDES); 
    }
    else if ( message == "orangered" )
    {
       llSetColor(<1,0.27,0>, ALL_SIDES); ;
    }
    else if ( message == "hotpink" )
    {
       llSetColor(<1,0.41,0.71>, ALL_SIDES); 
    }
    else if ( message == "pink" )
    {
       llSetColor(<1,0.75,0.8>, ALL_SIDES); 
    }
   
//colors2//   
     
       else if ( message == "lightpink" )
    {
        llSetColor(<1,0.71,0.76>, ALL_SIDES); 
    }
    else if ( message == "deeppink" )
    {
          llSetColor(<1,0.08,0.58>, ALL_SIDES); 
    }
    else if ( message == "fuchsia" )
    {
      llSetColor(<1,0,1>, ALL_SIDES); 
    }
    else if ( message == "orchid" )
    {
      llSetColor(<0.85,0.44,0.84>, ALL_SIDES); 
    }
    else if ( message == "plum" )
    {
       llSetColor(<0.87,0.63,0.87>, ALL_SIDES); ;
    }
    else if ( message == "violet" )
    {
       llSetColor(<0.8,0.51,0.8>, ALL_SIDES); 
    }
    else if ( message == "indigo" )
    {
        llSetColor(<0.29,0,0.51>, ALL_SIDES); 
    }
    else if ( message == "crimson" )
    {
          llSetColor(<0.7,0.7,1>, ALL_SIDES); 
    }
    else if ( message == "lavender" )
    {
      llSetColor(<0.7,0.7,1>, ALL_SIDES); 
    }
    else if ( message == "magenta" )
    {
       llSetColor(<1,0,1>, ALL_SIDES); ;
    }
    else if ( message == "purple" )
    {
      llSetColor(<0.5,0,0.5>, ALL_SIDES); 
    } 
    else if ( message == "darkmagenta" )
    {
       llSetColor(<0.55,0,0.55>, ALL_SIDES); 
    }

//colors3//

  else if ( message == "darkviolet" )
    {
        llSetColor(<0.58,0,0.83>, ALL_SIDES); 
    }
    else if ( message == "blueviolet" )
    {
          llSetColor(<0.54,0.17,0.89>, ALL_SIDES); 
    }
    else if ( message == "darkblue" )
    {
      llSetColor(<0,0,0.55>, ALL_SIDES); 
    }
    else if ( message == "blue" )
    {
      llSetColor(<0,0,1>, ALL_SIDES); 
    }
    else if ( message == "deepskyblue" )
    {
       llSetColor(<0,0.75,1>, ALL_SIDES); ;
    }
    else if ( message == "mediumblue" )
    {
       llSetColor(<0,0,0.8>, ALL_SIDES); 
    }
    else if ( message == "midnightblue" )
    {
        llSetColor(<0.1,0.1,0.44>, ALL_SIDES); 
    }
    else if ( message == "slateblue" )
    {
          llSetColor(<0.42,0.35,0.8>, ALL_SIDES); 
    }
    else if ( message == "royalblue" )
    {
      llSetColor(<0.25,0.41,0.88>, ALL_SIDES); 
    }
    else if ( message == "steelblue" )
    {
       llSetColor(<0.27,0.51,0.71>, ALL_SIDES); ;
    }
    else if ( message == "teal" )
    {
      llSetColor(<0,0.5,0.5>, ALL_SIDES); 
    } 
    else if ( message == "turquoise" )
    {
       llSetColor(<0.25,0.88,0.82>, ALL_SIDES); 
    }


//Shine //

 
   else if ( message == "None" )
    {
         llSetPrimitiveParams ([PRIM_BUMP_SHINY,ALL_SIDES,PRIM_SHINY_NONE,0]); 
    }
    else if ( message == "Low" )
    {
        
           llSetPrimitiveParams ([PRIM_BUMP_SHINY,ALL_SIDES,PRIM_SHINY_LOW,0]); 
         
    }
    else if ( message == "Medium" )
    {
     
       llSetPrimitiveParams ([PRIM_BUMP_SHINY,ALL_SIDES,PRIM_SHINY_MEDIUM,0]); 
       
    }
     else if ( message == "Maximum" )
    {
       llSetPrimitiveParams ([PRIM_BUMP_SHINY,ALL_SIDES,PRIM_SHINY_HIGH,0]); 
       
    }

//Star/end//

  else if ( message == "Start" )
    {
       
        llRezObject("Part", llGetPos() + <0.0,0.0,1.0>, <0.0,0.0,0.0>, <0.0,0.0,0.0,1.0>, 0);
         llRezObject("Part 2", llGetPos() + <0.0,0.0,1.0>, <0.0,0.0,0.0>, <0.0,0.0,0.0,1.0>, 0);
     llRezObject("Part 3", llGetPos() + <0.0,0.0,1.0>, <0.0,0.0,0.0>, <0.0,0.0,0.0,1.0>, 0);
     llRezObject("Part 4", llGetPos() + <0.0,0.0,1.0>, <0.0,0.0,0.0>, <0.0,0.0,0.0,1.0>, 0);
    }


         
        }
         
         
      }
}